package util.output;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintStream;

public class Debug {
	
	private static boolean ativoArquivo = true;
	private static boolean ativoConsole = true;
	private static PrintStream stream;

	public static void ativarArquivo() {
		ativoArquivo = true;
	}
	
	public static void desativarArquivo() {
		ativoArquivo = false;
	}
	
	public static void ativarConsole() {
		ativoConsole = true;
	}
	
	public static void desativarConsole() {
		ativoConsole = false;
	}
	
	/**
	 * Utiliza o arquivo como saída de dados.
	 * 
	 * @param nomeArquivo
	 */
	public static void noArquivo(String nomeArquivo) {
		File file = new File(nomeArquivo);
		
		try {
			if (ativoArquivo)
				stream = new PrintStream(file);
		}
		catch (FileNotFoundException e) {
			e.printStackTrace();
		}
	}
	
	/**
	 * Imprime os dados.
	 * 
	 * @param texto
	 */
	public static void imprime(String texto) {
		if (ativoArquivo)
			stream.println(texto);
	}
	
	public static void imprimeConsole(String texto) {
		if (ativoConsole)
			System.out.println(texto);
	}
}
